﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using LHS.Core.TableInfo;
using System.Collections.Specialized;
using MS.Core.Base.Transaction;

namespace LHS.Win
{
    public partial class frmThemNguoiTruyNhap : Form
    {
        // Methods
        public frmThemNguoiTruyNhap()
        {
            this.InitializeComponent();
        }

        private void btThem_Click(object sender, EventArgs e)
        {
            if (this.tbUserName.Text == "")
            {
                MessageBox.Show("Vui lòng nhập tên Truy Nhập!", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbPassword.Text == "")
            {
                MessageBox.Show("Vui lòng nhập Nhập Mật Khẩu!", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbPasswordConfirm.Text == "")
            {
                MessageBox.Show("Vui lòng nhập Xác Nhận Mật Khẩu!", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.tbPassword.Text.ToString() != this.tbPasswordConfirm.Text.ToString())
            {
                MessageBox.Show("Mật khẩu không đối xứng!", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else if (this.cbRole.Text == "")
            {
                MessageBox.Show("Vui lòng chọn quyền truy nhập!", "Lỗi nhập", MessageBoxButtons.OK, MessageBoxIcon.Hand);
            }
            else
            {
                int num;
               
                if (this.cbRole.Text.Equals("Trưởng Phòng Khám"))
                {
                    num = 0;
                }
                else if (this.cbRole.Text.Equals("Bác Sĩ"))
                {
                    num = 1;
                }
                else if (this.cbRole.Text.Equals("Y Tá (Tiếp Tân)"))
                {
                    num = 2;
                }
                else
                {
                    num = 3;
                }

                LHS.Core.Authority.AuthorityController objController = new LHS.Core.Authority.AuthorityController();
                ListDictionary param = new ListDictionary();
                param.Add(InfoUsers.USRNAME,tbUserName.Text);
                object strUserName = objController.GetScalar(InfoUsers.USRNAME, param, InfoUsers.TABLENAME);

                if (strUserName != null)
                {
                    MessageBox.Show("Tên truy nhập: '" + this.tbUserName.Text + "' đã tồn tại.\n Vui lòng chọn tên truy nhập khác?", "Tên truy nhập đã tồn tại!", MessageBoxButtons.OK, MessageBoxIcon.Hand);
                }
                else
                {
                    try
                    {
                        DataTable dt = InfoUsers.GetStructure();
                        DataRow dr = dt.NewRow();
                        dr[InfoUsers.USRNAME] = tbUserName.Text;
                        dr[InfoUsers.USRPASSWORD] = tbPassword.Text;
                        dr[InfoUsers.ROLISN] = num;
                        objController.InsertUser(dr);
                        MessageBox.Show("Thêm mới thành công!", "Thêm mới thành công!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    }
                    catch (Exception ex)
                    {
                        Class.ShowException(ex);
                    }
                }
            }
        }

        private void btThoat_Click(object sender, EventArgs e)
        {
            base.Close();
        }

    }
}